From: Andrew Cooper Date: Tue, 14 Jun 2016 11:45:56 +0000 (+0100) Subject: x86/paging: Make paging_mode_*() predicates behave like predicates X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~436 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https:/%22bookmarks://%22Dat/%22http:/www.example.com/cgi/%22https:/%22bookmarks:/%22Dat?a=commitdiff_plain;h=f8b4d961d5661d2edfaccadf66988596bfbc44c6;p=xen.git x86/paging: Make paging_mode_*() predicates behave like predicates Signed-off-by: Andrew Cooper Acked-by: Tim Deegan Acked-by: George Dunlap --- diff --git a/xen/include/asm-x86/paging.h b/xen/include/asm-x86/paging.h index a1401abf55..56eef6b512 100644 --- a/xen/include/asm-x86/paging.h +++ b/xen/include/asm-x86/paging.h @@ -57,14 +57,14 @@ * requires VT or similar mechanisms */ #define PG_external (XEN_DOMCTL_SHADOW_ENABLE_EXTERNAL << PG_mode_shift) -#define paging_mode_enabled(_d) ((_d)->arch.paging.mode) -#define paging_mode_shadow(_d) ((_d)->arch.paging.mode & PG_SH_enable) -#define paging_mode_hap(_d) ((_d)->arch.paging.mode & PG_HAP_enable) - -#define paging_mode_refcounts(_d) ((_d)->arch.paging.mode & PG_refcounts) -#define paging_mode_log_dirty(_d) ((_d)->arch.paging.mode & PG_log_dirty) -#define paging_mode_translate(_d) ((_d)->arch.paging.mode & PG_translate) -#define paging_mode_external(_d) ((_d)->arch.paging.mode & PG_external) +#define paging_mode_enabled(_d) (!!(_d)->arch.paging.mode) +#define paging_mode_shadow(_d) (!!((_d)->arch.paging.mode & PG_SH_enable)) +#define paging_mode_hap(_d) (!!((_d)->arch.paging.mode & PG_HAP_enable)) + +#define paging_mode_refcounts(_d) (!!((_d)->arch.paging.mode & PG_refcounts)) +#define paging_mode_log_dirty(_d) (!!((_d)->arch.paging.mode & PG_log_dirty)) +#define paging_mode_translate(_d) (!!((_d)->arch.paging.mode & PG_translate)) +#define paging_mode_external(_d) (!!((_d)->arch.paging.mode & PG_external)) /* flags used for paging debug */ #define PAGING_DEBUG_LOGDIRTY 0